#pragma once
#include <vector>
#include <list>
#include "Maillage.h"
#include "Moteur.h"
#include "Objet.h"
#include "Lumiere.h"

using namespace std;
class Scene
{
private:
	vector<Maillage*> m_listeStockage;
	vector<Moteur*> m_TableauMoteur;
	vector<Lumiere*> m_ListeLumiere;
	list<Objet *> m_ListeAffichage;
public:

	void addMaillage(Maillage*);
	void addMoteur(Moteur*);
	void addObjet(Objet*);
	void addLumiere(Lumiere*);

	void activeAllMoteur();
	void SetOneMoteurActivity(int indice, bool value);
	void unactiveAllMoteur();
	

	void dessin();
	list<Objet *> getListeAffichage();
	vector<Maillage *> getCollection();// const;
	vector<Moteur*> getMoteurs();
	vector<Lumiere*> getLumiere();

	Scene(void);
	~Scene(void);
};
